/**
 * Created by liyun on 2016/12/26.
 */
app.controller('MenuCtrl', function($http, $myconfig, $rootScope, $scope, $state, $stateParams, $ionicHistory, $timeout, $ionicSideMenuDelegate, BthSevice,PopupService,$cordovaBluetoothLE) {


    //获取本地储存的用户信息，并将字符串转换为json对象
    // $scope._isUser = $rootScope._RootUser;
    // console.log($scope._isUser);

    // if(!$rootScope._RootUser){
    if(JSON.parse(localStorage.getItem('user'))){
        $rootScope._RootUser = JSON.parse(localStorage.getItem('user'));
    }
    // }



    //绑定设备
    $scope.binding = function(index){
        /**
         *  注释人： Jimmy
         *  注释日期：2017年3月14日10:30:03
         *  内容：
         *  1)判断绑定会出现的三种情况   （未绑定设备，已绑定一台设备，绑定两台设备）
         *  2）未绑定设备时 直接绑定当前点击的设备，并等待服务器返回数据成功后跳转至设备使用页面
         *  3） 已绑定一台设备时 判断当前点击的时什么设备，如果与当前账户绑定设备相匹配则跳转至设备使用界面，否则向服务器发送绑定设备请求，待服务器返回成功数据后跳转至设备使用界面
         *  4）已绑定两台设备 判断当前点击的时什么设备，并且跳转至使用界面
         */
         if(!$rootScope._RootUser){
                    $scope.login_text = '检测到您当前未登录账户，请登录后重试';
                    PopupService.tologin($scope);
                    //跳转登录页面
        }else if(!$rootScope._RootUser.modality.length){       //当前账户未绑定设备时
            $http.post($myconfig.api.base_host + '/users/modality' , {
                "user_id": $rootScope._RootUser.id,
	            "dev_name":index
            }).then(function(res){
                if(res.data.success){
                    // console.log('绑定成功');
                    $http.get($myconfig.api.base_host + '/users/user_info?mobile=' + $rootScope._RootUser.mobile)
                    .then(function(res){
                        if(res.data.success){
                            $scope.success = true;
                            localStorage.setItem('user',JSON.stringify(res.data.data))
                            $state.go('app.home');
                        }
                    });

                     if(index == '金鼻光'){
                        $state.go('app.BiGuangBao');
                    }else if('焕颜宝'){
                        $state.go('app.YanZhiBao');
                    }
                }else if(res.data.data == '该设备已经绑定，请选择其他设备'){
                       if(index == '金鼻光'){
                        $state.go('app.BiGuangBao');
                    }else if('焕颜宝'){
                        $state.go('app.YanZhiBao');
                    }
                }
            });
        }else if($rootScope._RootUser.modality.length < 2){   //当前账户绑定一台设备时
            /**
             * 遍历设备数据
             * 如果当前绑定设备与点击设备匹配则直接跳转至设备使用界面
             * 如果当前点击设备与账户已绑定设备不配陪，则向服务器发送绑定请求，请求成功后，跳转至设备使用页面
             */
            for(var i = 0;i<$rootScope._RootUser.modality.length;i++){
                if($rootScope._RootUser.modality[i].name != index){
                    $http.post($myconfig.api.base_host + '/users/modality' , {
                        "user_id": $rootScope._RootUser.id,
                        "dev_name":index
                    }).then(function(res){
                        if(res.data.success){
                            // console.log('绑定成功');
                            $http.get($myconfig.api.base_host + '/users/user_info?mobile=' + $rootScope._RootUser.mobile)
                            .then(function(res){
                                if(res.data.success){
                                    $scope.success = true;
                                    localStorage.setItem('user',JSON.stringify(res.data.data))
                                    $state.go('app.home');
                                }
                            });
                            if(index == '金鼻光'){
                                $state.go('app.BiGuangBao');
                            }else if('焕颜宝'){
                                $state.go('app.YanZhiBao');
                            }
                        }
                    });
                }else{
                     if(index == '金鼻光'){
                        $state.go('app.BiGuangBao');
                    }else if('焕颜宝'){
                        $state.go('app.YanZhiBao');
                    }
                }
            }
        }else if($rootScope._RootUser.modality.length == 2){  //当前账户绑定两台设备时
            if(index == '金鼻光'){
                $state.go('app.BiGuangBao');
            }else if('焕颜宝'){
                $state.go('app.YanZhiBao');
            }
        }
    };

    $scope.name = '首页';
    $scope.bgb = '金鼻光';
    $scope.hyb = '焕颜宝';
    $scope.append = '连接新的保养仪';
    $scope.news = '资讯中心';
    $scope.notify = '通知中心';
    $scope.vip = '会员中心';
    $scope.log = '登录';


    // $scope.color = {color: 'grey'};//#32CD32
    $rootScope.$on('sendToMenu', function (event, data) {
        if(data == "on"){
            // console.log(data);
            // $scope.color = {color: '#32CD32'};
            $rootScope.bthshow = true;

            $scope.device_name = JSON.parse(localStorage.getItem(localStorage.getItem('addr'))).name;
        }else {
            $rootScope.bthshow = false;
        }
    });

    $scope.bth_off = function () {
        BthSevice.closeLED(); //先关灯
        BthSevice.closeConn(BthSevice.address); //再关连接
        $ionicSideMenuDelegate.toggleLeft();

        $rootScope.isKeepConnect = false;
        // location.reload();
    };

     //判定当前设备类型是ios还是android
    var u = navigator.userAgent;
    var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
    var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

    $scope.bth_on = function () {
        // BthSevice.enable(); // 开启蓝牙
        if(!$rootScope._RootUser){
                    $scope.login_text = '检测到您当前未登录账户，请登录后重试';
                    PopupService.tologin($scope);
                    //跳转登录页面
                     $ionicSideMenuDelegate.toggleLeft();
        }else{
                // $cordovaBluetoothLE.isEnabled(false).then(function(res){    //检测设备是否已连接
                //     console.log(res);
                // });
                //  $cordovaBluetoothLE.services(true).then(function(res){
                //     console.log(res);
                // });
                //  $cordovaBluetoothLE.characteristics(true).then(function(res){
                //     console.log(res);
                // });
                //  $cordovaBluetoothLE.descriptors(true).then(function(res){
                //     console.log(res);
                // });

            if(isiOS){
                $timeout(function () {
                    BthSevice.initialize(); //重新连接试试
                    $timeout(function () {
                        $state.go('app.MyLink');
                    }, 500);
                }, 1000);
            }else{
                $timeout(function () {
                    BthSevice.initialize(); //重新连接试试
                    $timeout(function () {
                        $state.go('app.MyLink');
                    }, 500);
                }, 1000);
                $ionicHistory.nextViewOptions({
                    disableAnimate: true,
                    disableBack: true,
                    historyRoot: true
                });

            }
            $ionicSideMenuDelegate.toggleLeft();
        }
    };

    /*$scope.changePage = function (router) {
        // $timeout(function () {
            switch (router) {
                case 'app.BiGuangBao':
                    $state.go(router);
                    break;
                case 'app.YanZhiBao':
                    $state.go(router);
                    break;
            }
            $ionicSideMenuDelegate.toggleLeft();
        // }, 500);

    };*/
});
